package BD;

import java.sql.ResultSet;
import java.sql.SQLException;


public class TitularBD {

	/**
	 * 
	 * @param contribuyente identificador del contribuyente que se le asocia un titular
	 * @param operador identificador del operador que esta dando de alta el titular
	 * @param grupoSanguineo grupo sanguineo del titular el titular a insertar
	 * @param factorRH factor RH del titular el titular a insertar
	 * @param donanteOrganos si es donante de organos el titular a insertar
	 * @return el retorno es -1 si el titular no fue creado
	 */
	public static int altaTitular(int contribuyente, int operador, String grupoSanguineo, 
			String factorRH, String donanteOrganos) {

		int resultado=-1;
		String consulta="INSERT INTO titular (contribuyente, operador, grupoSanguineo, factorRH, donanteOrganos) VALUES ("
				+contribuyente+","+operador+", '"+grupoSanguineo+"', '"+factorRH+"', '"+donanteOrganos+"');";

		try {

			resultado = Conexion.consulta.executeUpdate(consulta);
		} 
		catch (SQLException e) {
            e.printStackTrace();
            }

		return resultado;
	}
	public static int actualizarTitular(int id, String grupoSanguineo, 
			String factorRH, String donanteOrganos) {

		int resultado=-1;
		String consulta="UPDATE titular set grupoSanguineo='"+grupoSanguineo+"',factorRH='"+factorRH+"', donanteOrganos='"+donanteOrganos+"' WHERE id="+id+";";
		
		try {

			resultado = Conexion.consulta.executeUpdate(consulta);
		} 
		catch (SQLException e) {
            e.printStackTrace();
            }

		return resultado;
	}
	/**
	 * 
	 * @param contribuyente identificador del contribuyente que se desea buscar el titular
	 * @return Retona el resultado de la consulta de buscar un titular a partir de un contriyuyente en particular
	 */
	public static ResultSet buscarTitular(int contribuyente) {
		String consulta = "SELECT * FROM titular WHERE contribuyente = "+contribuyente+";";
		ResultSet resultado =null;
		
		try {
			resultado=Conexion.consultar(consulta);
		} catch (SQLException e) {
			e.printStackTrace();
		}

		return resultado;
	}

	/**
	 * 
	 * @param titular identificador del titular que se desea buscar las licencias otorgadas
	 * @return resultado de la consulta de buscar licencia para un titular
	 */
	public static ResultSet licenciasOtorgadasTitular(int titular){
		String consulta = "SELECT l.* FROM tramite as t, licencia as l WHERE t.licencia=l.id and t.titular="+titular+";";
		ResultSet resultado =null;
		
		try {
			resultado=Conexion.consultar(consulta);
		} catch (SQLException e) {
			e.printStackTrace();
		}

		return resultado;
		
	}
	/**
	 * 
	 * @param contribuyente
	 * @return el resultado de la consulta de buscar el idTitular de un contriyuyente en particular
	 */
	public static ResultSet buscarIdTitular(int contribuyente) {
		String consulta = "SELECT id FROM titular WHERE contribuyente="+contribuyente+";";
		ResultSet resultado = null;
		
		try {
			resultado=Conexion.consultar(consulta);
		} catch (SQLException e) {
			e.printStackTrace();
		}

		return resultado;
	}
}
